Hearing system with joint task scheduling

ABSTRACT

The hearing system ( 1 ) comprises a first processing unit ( 2 A); a second processing unit ( 2 B); and a scheduling unit ( 3 ) for jointly scheduling tasks to be executed in said first processing unit ( 2 A) and tasks to be executed in said second processing unit ( 2 B). Preferably, the hearing system ( 1 ) comprises a first device ( 1 A) comprising said first processing unit ( 2 A); and a second device ( 1 B) comprising said second processing unit ( 2 B). 
     The method for operating a hearing system ( 1 ) comprising a first ( 2 A) and a second ( 2 B) processing unit, comprises the step of jointly scheduling at least one task to be executed in said first processing unit ( 2 A) and at least one task to be executed in said second processing unit ( 2 B). If, during scheduling of a task to be executed in said first processing unit, tasks to be executed in said second processing unit can be considered, an improved performance of the hearing system ( 1 ) can be achieved, e.g, an improved time synchronization or an improved handling of obsolete tasks.

TECHNICAL FIELD

The invention relates to the field of hearing devices and to hearingsystems. It relates to methods and apparatuses according to the openingclauses of the claims.

Under a hearing device, a device is understood, which is worn in oradjacent to an individual's ear with the object to improve theindividual's acoustical perception. Such improvement may also be barringacoustic signals from being perceived in the sense of hearing protectionfor the individual. If the hearing device is tailored so as to improvethe perception of a hearing impaired individual towards hearingperception of a “standard” individual, then we speak of a hearing-aiddevice. With respect to the application area, a hearing device may beapplied behind the ear, in the ear, completely in the ear canal or maybe implanted.

A hearing system comprises at least one hearing device. In case that ahearing system comprises at least one additional device, all devices ofthe hearing system are operationally connectable within the hearingsystem. Typically, said additional devices such as another hearingdevice, a remote control or a remote microphone, are meant to be worn orcarried by said individual.

BACKGROUND OF THE INVENTION

In many modern hearing systems such as binaural hearing systems, two ormore devices are wirelessly interconnected. There are several purposesfor which it is of interest to synchronize processes such as signalgeneration or signal processing taking place in different devices ofsuch a hearing system, e.g., in a left and a right hearing device of abinaural hearing system. Several ways to achieve a synchronization ofsuch processes are known:

In EP 1750482, a method for synchronous presentation of signaling beepsin binaural hearing systems is disclosed.

In EP 1624723, a method for increasing the accuracy of a master clockoscillator of a hearing device by exchanging a clock reference from acrystal driven accessory is disclosed.

In EP 1746861, a method of tuning the master clock oscillator of ahearing device by means of a correlation, receiving an externalreference signal, is disclosed.

In U.S. 2002/01316131, a binaural hearing system with a communicationlink is disclosed.

In EP 1715723, a method for establishing a network time and using thenetwork time for the synchronization of events is disclosed.

In EP 1651005, a binaural hearing system and method for time-alignedaudio signal perception of sounds generated in the hearing system isdisclosed.

A modern digital hearing device usually comprises one or more processorssuch as a digital signal processor and a controller. Also other devicesof a hearing system, such as for example a remote control, can compriseone or more processors. In such hearing devices, it is common to haveone scheduler for each of those processors, which schedules—on thelowest scheduling level and therefore as the final authority—the taskswhich are to be executed in the corresponding processor. Such ascheduler is realized in the corresponding device in form of softwareand/or hardware.

SUMMARY OF THE INVENTION

One object of the invention is to create a hearing system having animproved performance. In addition, the respective method for operating ahearing system shall be provided, as well the respective use of ascheduling unit in a hearing system.

Another object of the invention is to create a hearing system having animproved behavior.

Another object of the invention is to provide a possibility to realizean improved time synchronization between tasks carried out in differentprocessing units of a hearing system, and in particular between taskscarried out in different devices of a hearing system.

Another object of the invention is to realize a hearing system which isoperable in a particularly consistent way.

Another object of the invention is to realize a hearing system which isparticularly well-reacting.

Another object of the invention is to realize a hearing system having animproved task handling.

Further objects emerge from the description and embodiments below.

At least one of these objects is at least partially achieved byapparatuses and methods according to the patent claims.

The hearing system comprises

-   -   a first processing unit;    -   a second processing unit;    -   a scheduling unit for jointly scheduling tasks to be executed in        said first processing unit and tasks to be executed in said        second processing unit.

The method for operating a hearing system comprising a first and asecond processing unit comprises the step of jointly scheduling at leastone task to be executed in said first processing unit and at least onetask to be executed in said second processing unit.

The use according to the invention is a use of a scheduling unit in ahearing system comprising a first processing unit and a secondprocessing unit, for jointly scheduling tasks to be executed in saidfirst processing unit and tasks to be executed in said second processingunit.

Through this, an improved performance of the hearing system can beachieved. It is, in particular, possible to reschedule tasks still at avery late point in time. It is possible to consider interdependenciesbetween different devices of the hearing system and/or between tasksbeing executed or to be executed in said first and in said secondprocessing unit, respectively, still at a very late stage.

Said scheduling unit is generally a task scheduling unit.

Said task is generally a processing task, i.e. instructions to aprocessor describing when to carry out which processing steps. “Tasks”as they are mentioned here largely correspond to what is referred to asa “process” or what is referred to as a “thread” in the field ofcomputing.

Said processing unit can be, e.g., a CPU (central processing unit), aDSP (digital signal processor), a micro-controller or some otherprocessing hardware.

Said jointly scheduling of said tasks can—at least from a particularpoint of view—also be referred to as a scheduling of tasks for saidfirst processing unit and of tasks for said second processing unit in acombined fashion.

Viewed from another particular point of view, said jointly scheduling ofsaid tasks means that during scheduling (or at the time of scheduling)of a task to be executed in said first processing unit, tasks to beexecuted in said second processing unit and possibly also taskscurrently executed said second processing unit can be considered, andtypically vice versa. The scheduling unit has access to correspondingdata and is therefore “aware” of tasks to be executed and typically alsocurrently exectued in said second processing unit (pending tasks andongoing tasks for the second processing unit). Of course, also pendingtasks and ongoing tasks for the first processing unit will usually beconsidered during scheduling (or at the time of scheduling) of a task tobe executed in said first processing unit.

Viewed from another particular point of view, said jointly scheduling ofsaid tasks means that the scheduling of a task to be executed in saidfirst processing unit is dependent on tasks to be executed in saidsecond processing unit and possibly also on tasks currently executedsaid second processing unit, and typically vice versa.

Viewed from a different angle, according to the invention, the hearingsystem comprises a storage unit comprising data representative of a taskschedule comprising at least one task scheduled for execution in saidfirst processing unit and at least one task scheduled for execution insaid second processing unit.

Said scheduling unit can be realized in form of software or in form ofhardware or in form of a combination of software and hardware. Saidsoftware can run on a processor, e.g., said first and/or said secondprocessor; said hardware can be or comprise an EEPROM, an ASIC, an FPGAor others.

It is possible to provide that said scheduling unit schedules tasks forall processing units of said hearing system. But it is also possible toprovide that there are one or more processing units in said hearingsystem for which tasks are not scheduled by said scheduling unit.

Note that the term “scheduling” as used in this application does notmean providing a schedule to one or more individuals concerning tasksthe individual(s) has/have to carry out, such as it is done inelectronic agendas, personal organizers and the like.

From the online encyclopedia Wikipedia, the following definitionconcerning scheduling in the field of computer science has been derived:

-   -   “In computer science, a scheduling algorithm is the method by        which threads or processes are given access to system resources,        usually processor time.”

(http://en.wikipedia.org/wiki/Scheduling_algorithm)

In a certain view, the term “scheduling” as used in this applicationapproximately corresponds to this Wikipedia understanding of“scheduling” in computer science.

In one embodiment, the hearing system comprises

-   -   a first device comprising said first processing unit;    -   a second device comprising said second processing unit.

Typically, said first and second devices are wirelessly interconnectableor wirelessly interconnected.

In one embodiment, the hearing system comprises a storage unitcomprising data representative of a task schedule comprising at leastone task scheduled for execution in said first processing unit and atleast one task scheduled for execution in said second processing unit.Of course, it is possible to provide that, when there are currently nopending tasks, the storage unit can be empty. Said task schedule or,more precisely, said data, are the result of said joint scheduling andare generated by said scheduling unit, respectively. Said task schedulecan in particular be considered a joint or common or combined taskschedule for said first and said second processing unit. Said taskschedule typically is a list of tasks each having assigned a priority,e.g., a scheduled time of execution or a scheduled time by when the taskis to be completed (due date).

In one embodiment, said at least one task scheduled for execution insaid first processing unit and said at least one task scheduled forexecution in said second processing unit are each provided with apriority indicator.

In particular, said priority indicator may comprise a scheduled time ofexecution for the corresponding task. It is possible to provide thatsaid scheduled time of execution means “as soon as possible”.

Furthermore, it is possible to provide tasks in said task schedule withan indicator indicative of the processing unit in which the task is tobe executed and/or with an indicator indicative of that one device whichhas requested the execution of the corresponding task. The latter can behelpful, e.g., if a requested task has to be scheduled for execution ata particularly late point in time, because it allows to easily providethe requesting device with information stating the delay. The requestingdevice can thereupon, e.g., inform the user of the hearing system aboutthe delay, in particular if the user had demanded (directly orindirectly) the execution of the respective task.

Furthermore, it is possible to provide tasks in said task schedule withan indicator indicative of the point in time at which the respectivetask has been requested. This can be very helpful during scheduling,because from this time of request, an order (sequence) of requests canbe obtained which can be helpful when assigning priorities to tasks orwhen rescheduling tasks.

In one embodiment, said storage unit is comprised in at least one deviceof said hearing system, and a copy of said data representative of saidtask schedule is stored in at least one other device of said hearingsystem. In other words, at least two copies of said data exist, whichprovides some redundancy. This makes the operation of the hearing systemsafer, in particular if it is to be expected that interconnectionsbetween devices of the hearing system are occasionally interrupted.

In one embodiment, said storage unit is distributed among at least twodevices of said hearing system. This can be accomplished, e.g., in atime-division-multiplexed fashion.

For example, it is possible to provide that the device which mostrecently requested the execution of a task will carry out the nextstep(s) of said joint scheduling. This can be advantageous in terms ofstability of the hearing system operation when it is to be expected thatinterconnections between devices of the hearing system are occasionallyinterrupted (temporarily lost communication connection). Alternatively,it is of course possible to provide that said storage unit is comprisedin one device (“master device”) of the hearing system, and said datarepresentative of said task schedule are, during operation of thehearing system, stored therein.

In one embodiment, said scheduling unit is distributed among at leasttwo devices of said hearing system. This can be accomplished in atime-division-multiplexed fashion, e.g., such that in that device, whichmost recently requested the execution of a task, said joint schedulingwill be carried out. Or, it can be accomplished, e.g., by parallelprocessing distributed in different devices of the hearing system.Alternatively, it is of course possible to provide that said schedulingunit is comprised in one device (“master device”) of the hearing system.

In one embodiment of the method, said first and said second processingunits are each comprised in a different device of said hearing system,and said method comprises the step of operationally interconnecting saidtwo different devices in a wireless fashion.

In one embodiment, the method comprises the step of generating datarepresentative of a task schedule comprising at least one task scheduledfor execution in said first processing unit and at least one taskscheduled for execution in said second processing unit.

In one embodiment, the method comprises the step of providing each of

-   -   said at least one task scheduled for execution in said first        processing unit; and    -   said at least one task scheduled for execution in said second        processing unit        with a priority indicator.

In one embodiment, the method comprises the step of storing said data ina distributed fashion in at least two devices of said hearing system.

In one embodiment, the method comprises the step of carrying out saidjointly scheduling in a distributed fashion in at least two devices ofsaid hearing system.

Viewed from another different angle, a hearing system according to theinvention comprises a scheduling unit adapted to scheduling tasks for atleast a first processing unit of the hearing system, wherein saidscheduling unit has access to tasks requested for execution in saidfirst processing unit and to tasks requested for execution in a secondprocessing unit of the hearing system. Typically, said scheduling unitschedules tasks for at least said first and said second processing unitsof the hearing system and has access to data representative of tasksrequested for execution in said first processing unit and to datarepresentative of tasks requested for execution in said secondprocessing unit.

The invention comprises methods and uses with features of correspondinghearing systems according to the invention, and vice versa.

The advantages of the methods and uses correspond to the advantages ofcorresponding apparatuses and vice versa.

Further embodiments and advantages emerge from the dependent claims andthe figures.

BRIEF DESCRIPTION OF THE DRAWINGS

Below, the invention is described in more detail by means of examplesand the included drawings. The figures show schematically:

FIG. 1 a block-diagrammatical illustration of a hearing system and amethod according to the invention;

FIG. 2 a block-diagrammatical illustration of a hearing system and amethod according to the invention.

The reference symbols used in the figures and their meaning aresummarized in the list of reference symbols. The described embodimentsare meant as examples and shall not confine the invention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 shows schematically a block-diagrammatical illustration of ahearing system 1 and a method according to the invention. The hearingsystem 1 comprises devices 1A, 1B, 1C, 1D, e.g., a left hearing device1A, a right hearing device 1B, a comprehensive remote control 1C and asimple remote control 1D. The other components of the hearing system 1shown in FIG. 1 are realized in one or more of the devices 1A, 1B, 1C,1D. Further details and components of the hearing system 1 are not shownin FIG. 1.

Any of the devices 1A, 1B, 1C, 1D can request the execution of tasks tobe executed in one or more processing units 2A, 2B, 2C of the hearingsystem 1. It shall be assumed that processing unit 2A, e.g., a digitalsignal processor, is comprised in device 1A, processing unit 2B, e.g., adigital signal processor, is comprised in device 1B, and processing unit2C, e.g., a controller, is comprised in device 1C, whereas device 1D hasno processing unit or has at least no such processing unit of whichanother device (besides device 1D itself) could request that a taskshould be executed in it. It is also possible that there are two or moreprocessing units comprised in one or more of the devices 1A, 1B, 1C, 1D.

A task request is typically generated by a device 1A, 1B, 1C, 1D itselfor upon a user action. E.g., a classifier in device A could detect thatthe current acoustic environment has changed and request thereupon theexecution of a program change into a corresponding hearing program. Sucha program change would have to be carried out by hearing devices 1A, 1Band, more particularly, by processing units 2A and 2B. Another example:The hearing system user toggles a volume switch of device 1D or ofhearing device 1A for increasing the output volume of both hearingdevices 1A, 1B. That task should then be executed by processing units 2Aand 2B. When the execution of a task is requested, it is possible thatalso the device or processor in which the task is to be executed, isspecified, but it is also possible that this will be determined at alater stage, namely during scheduling.

Any task request will be collected (stored) in a storage unit 6. Itwould also be possible to provide that only a certain kind of tasks,e.g., tasks requested by certain devices or tasks requested forexecution in certain devices, are stored in storage unit 6.

From storage unit 6, the requested tasks are fed to a scheduling unit 3,also referred to as joint scheduler 3. Accordingly, joint scheduler 3 isprovided with information about all requested tasks, regardless of theprocessing unit in which the task shall be executed. This makes itpossible to provide that joint scheduler 3 generates a joint schedule,i.e. a schedule comprising scheduled tasks for execution in any of theprocessing units 2A, 2B, 2C. Such a joint schedule (or, more precisely,data representative thereof) are stored in a storage unit 4. And, duringthe scheduling, joint scheduler 3 can consider interdependencies betweentasks requested for execution in any of the processing units 2A, 2B, 2C.Accordingly, by means of a hearing system 1 as shown in FIG. 1, it ispossible to perform scheduling of tasks to be executed in one processingunit in dependence of tasks requested for execution in one or more otherprocessing units. Accordingly, e.g., corrections can be made still at avery late stage, namely still during scheduling and immediately beforetask execution. Scheduling unit 3 is adapted to jointly scheduling.

Note that—in contrast thereto—in the state of the art in hearingsystems, a scheduler only schedules tasks for one single processing unitand is not “aware” of tasks requested for execution in other processingunits. Such a scheduler cannot consider tasks requested for execution inother processing units during scheduling. In case that there is somecorrelation between a task to be executed in a first processing unit anda task to be executed in a second processing unit, e.g., both tasksshall be executed at approximately the same time, information about thiscorrelation is used before the (separate) schedulers for the first andsecond processing unit, respectively, are provided with the requestedtasks, and said information is neither known to the schedulers, nor usedduring the separate scheduling processes.

For properly accomplishing the scheduling, joint scheduler 3 has accessto storage unit 5 in which rules are stored. Such rules determine or atleast influence the behavior of the hearing system 1. For example, therules can determine, which kind of tasks shall be treated as moreimportant than others.

Said joint schedule can, e.g., be one list comprising the scheduledtasks for execution in whichever processing unit, or be composed of aseparate list of scheduled tasks for execution in each of the processingunits.

Typically, when a task has been scheduled (and is comprised in saidjoint schedule), it has been provided with a priority with respect towhen it will be executed. A corresponding priority indicator can, e.g.,indicate a position in a queue, or indicate a point in time at which thetask is scheduled to be executed.

According to the data in the joint schedule, the scheduled tasks will beexecuted, each one in the processing unit for which it is scheduled.

After scheduling or after execution of a task, the task request can bedeleted from storage unit 6.

The joint schedule is, of course, steadily (more or less continuously)being updated or renewed, always considering new requested tasks.

It is possible to realize the components 3, 4, 5, 6 of hearing system 1according to the invention in various ways, in software, in hardware, incombinations of software and hardware. For the distribution ofcomponents 3, 4, 5, 6 among the devices 1A, 1B, 1C, 1D, there arevarious possible ways. For example, it is possible to choose one “masterdevice”, e.g., device 1C, which then comprises components 3, 4, 5, 6.

FIG. 2 shows a block-diagrammatical illustration of a hearing system 1and a method according to the invention similar to FIG. 1. Using FIG. 2,further possible distributions of joint scheduler 3 and storage units 4,5, and 6 among devices 1A, 1B, 1C, 1D will be discussed.

As indicated by the three boxes inside the storage unit 6 labeled taskrequests A, B, and C, respectively, storage unit 6 can be distributedamong several devices of the hearing system 1, e.g., as shown, amongdevices 1A, 1B, 1C.

It is possible to accomplish this in a time-division-multiplexed way, sothat—at any time—all current task requests are stored within one of thedevices 1A, 1B, 1C.

It is also possible to provide, that storage of task requests takesplace simultaneously in all the devices 1A, 1B, 1C and to collect alltask requests—as fast as possible—in all the devices 1A, 1B, 1C, 1D. Inthis case, the scheduling unit 3 will typically have to sort outsuperfluous multiply-occurring task requests.

Whatsoever, scheduling unit 3 should receive all requested tasks.

As indicated by the three boxes inside scheduling unit 3 labeledscheduler A, B, and C, respectively, scheduling unit 3 can bedistributed among several devices of the hearing system 1. This can beaccomplished by, e.g., time-division multiplexing. It is possible toprovide that that one device which most recently requested a task willaccomplish the joint scheduling and, accordingly, update the jointschedule in storage unit 4.

Storage unit 4 comprising the joint schedule can also be distributedamong several devices of the hearing system 1, e.g., in atime-division-multiplexed way, preferably along with the joint scheduler3. The same applies to storage unit 5 comprising the rules.

The invention can have advantages with respect to several aspects, someof which will be discussed below:

1) Re-scheduling of tasks:

There may be situations, in which a requested task becomes out of date,i.e. obsolete. E.g., the hearing system user wants to change fromautomatic program mode into manual program mode. In response to acorresponding manipulation of a user control of a device of the hearingsystem, the scheduling unit will schedule a program change task(tsk_(p)), e.g., for execution at time t_(p). However, it can happenthat just shortly before time t_(p), one device of the hearing systemrequests the execution of another task (tsk_(h)) which shall overrulethe program change task (tsk_(p)), i.e. program change task (tsk_(p)) isout of date and invalid.

A joint scheduling mechanism now can remove program change task(tsk_(p)) on all respective devices of the hearing system and schedule,also on all respective devices, task tsk_(h), e.g., for execution at atime t_(h).

2) Avoiding data jam in wireless hearing systems

During the operation of a hearing system comprising three or moredevices interconnected via a wireless network, one device may requestthe transmission of a considerable amount of data from each of the otherdevices of the hearing system via the network. It shall be assumed thatthe response of the devices to the request is not time critical, e.g.,does not have to occur within, e.g., the next 500 ms.

If the above is carried out without a joint scheduling mechanism, it islikely that a tremendous burst of data will be generated in the network,since in all the devices reacting to the request, the response to therequest is likely to be scheduled for execution at approximately thesame time.

In order to prevent such data transmission bursts in the network, ajoint scheduling mechanism can schedule such tasks generating a largeflow of data in the network for execution one after the other, i.e.distributed over time.

This way, the data load in the network is spread over time, and a lowthe peak load in the network is achieved.

3) Time synchronous data logging in several devices

Data logging is a concept known in the art of hearing devices. Datalogging can be used in a hearing system for capturing snapshots of theoperating state of all devices of the hearing system. Such snapshots maybe used, e.g., by the hearing device fitter or by an automatedapplication in the process of fine-tuning the hearing devices of thehearing system. However, such snapshots are most useful if they arecaptured at rather precisely the same time in all devices of the hearingsystem. Thus, data logging should be carried out in a time-synchronizedway.

A joint scheduling mechanism can greatly facilitate a timesynchronization of tasks such as data logging tasks in multiple devicesin a hearing system.

List of Reference Symbols

-   1 hearing system-   1A,1B, . . . device-   2A,2B, . . . processing unit, CPU, DSP, controller, processor,    processing chip-   3 scheduling unit, joint scheduler-   4 storage unit-   5 storage unit-   6 storage unit

What is claimed is:
 1. Hearing system, comprising a first processingunit; a second processing unit; a scheduling unit for jointly schedulingtasks to be executed in said first processing unit and tasks to beexecuted in said second processing unit; and a storage unit comprisingdata representative of a task schedule comprising at least one taskscheduled for execution in said first processing unit and at least onetask scheduled for execution in said second processing unit.
 2. Thehearing system according to claim 1, comprising a first devicecomprising said first processing unit; a second device comprising saidsecond processing unit.
 3. The hearing system according to claim 1,wherein said at least one task scheduled for execution in said firstprocessing unit and said at least one task scheduled for execution insaid second processing unit are each provided with a priority indicator.4. The hearing system according to claim 3, wherein said priorityindicator comprises a scheduled time of execution for the correspondingtask.
 5. The hearing system according to claim 1, wherein said storageunit is comprised in at least one device of said hearing system, and acopy of said data representative of said task schedule is stored in atleast one other device of said hearing system.
 6. The hearing systemaccording to claim 1, wherein said storage unit is distributed among atleast two devices of said hearing system.
 7. The device according toclaim 2, wherein said scheduling unit is distributed among at least twodevices of said hearing system.
 8. The device according to claim 2,wherein said jointly scheduling tasks to be executed in said firstprocessing unit and tasks to be executed in said second processing unitis or comprises scheduling tasks for execution in said first processingunit in dependence of tasks requested for execution in said secondprocessing unit.
 9. Method for operating a hearing system comprising afirst and a second processing unit, said method comprising the step ofjointly scheduling at least one task to be executed in said firstprocessing unit and at least one task to be executed in said secondprocessing unit and the step of generating data representative of a taskschedule comprising at least one task scheduled for execution in saidfirst processing unit and at least one task scheduled for execution insaid second processing unit.
 10. Method according to claim 9, whereinsaid first and said second processing units are each comprised in adifferent device of said hearing system, said method comprising the stepof operationally interconnecting said two different devices in awireless fashion.
 11. Method according to claim 9, comprising the stepof providing each of said at least one task scheduled for execution insaid first processing unit; and said at least one task scheduled forexecution in said second processing unit with a priority indicator. 12.Method according to claims 9, comprising the step of storing said datain a distributed fashion in at least two devices of said hearing system.13. Method according to claim 9, comprising the step of carrying outsaid jointly scheduling in a distributed fashion in at least two devicesof said hearing system.
 14. Method according to claim 9, wherein saidstep of jointly scheduling at least one task to be executed in saidfirst processing unit and at least one task to be executed in saidsecond processing unit is or comprises scheduling at least one task forexecution in said first processing unit in dependence of at least onetask requested for execution in said second processing unit.
 15. Use ofa scheduling unit in a hearing system comprising a first processing unitand a second processing unit, for jointly scheduling tasks to beexecuted in said first processing unit and tasks to be executed in saidsecond processing unit.